/**
	@file sfrs.S
	@author Andrew D. Zonenberg
	@brief Specifies physical addresses of special function registers
 */
.section .sfrs, "aw", @nobits

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// General notes
// 
// Write-only bitwise registers
// FOOSET = writing 1 bit sets corresponding bit in output register, 0 bit is ignored
// FOOCLR = writing 1 bit clears corresponding bit
// FOOINV = writing 1 bit flips corresponding bit
// Reads from all of these registers are undefined.


////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// UART
.global U1TXBUF
.offset 0xb0000000
U1TXBUF:			.word									//UART 1 transmit buffer

.global U1RXBUF
.offset 0xb0000010
U1RXBUF:			.word									//UART 1 receive buffer

.global U1BRG
.offset 0xb0000020
U1BRG:				.word									//UART 1 baud rate generator

.global U1STAT
.offset 0xb0000030
U1STAT:				.word									//UART 1 status register 

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// LED bank
.global LEDBANKA
.global LEDBANKASET
.global LEDBANKACLR
.global LEDBANKAINV
.offset 0xb0000100
LEDBANKA:			.word									//Bank of eight LEDs (high 24 bits ignored)
.offset 0xb0000104
LEDBANKASET:		.word
.offset 0xb0000108
LEDBANKACLR:		.word
.offset 0xb000010c
LEDBANKAINV:		.word

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Button array
.global BTNARRAY
.offset 0xb0000200
BTNARRAY:			.word									//Bank of four push buttons

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Flash controller
// 0xb00003xx reserved for future implementation of write mode on flash controller
